<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <!-- 
        vue是基于MVVM软件结构的

        M -> model -> 数据 -> data
        V -> view -> 视图 -> div#app(模板)
        VM -> viewModel -> 控制器 -> vue实例


        MVC 是单项数据流. 简单来说,就是数据变化,则视图立刻跟着变化.但是视图变化,数据不会发生变化

        MVVM 是双向数据流. 简单来说,就是数据变化,则视图变化.视图变化,也可以让数据变化
     -->

    <!-- 1.引入vue.js -->
    <script src="./vue.js"></script>

    <!-- 2. 定义模板,未来vue创建出来的元素会插入到模板中. 想要在页面上渲染什么结构,就直接在模板中定义即可-->
    <div id="app">
      <h1>vue初体验</h1>
      <p>{{msg}}</p>
      <p>{{1+1}}</p>
      <p>{{true ? '哈哈':'呵呵'}}</p>
      <!-- <p>{{if(true){}}}</p> -->
    </div>
    <!-- 3. 创建vue实例. vue实例可以帮我们管理模板(视图)和数据. 可以将数据插入到模板中,具体插入什么,插入到哪里是由程序员决定的-->
    <script>
      // 一般vue实例都会起名叫vm
      const vm = new Vue({
        // el绑定模板
        el: '#app',
        //data定义模板中要使用的数据
        data: {
          msg: 'hello vue',
        },
      })
      console.log(vm)
    </script>
  </body>
</html>
